//引入express模块
const express = require('express');
//加载cors跨域模块
// const cors = require('cors');
//创建服务器对象
const server = express();
//引入用户路由器
const useRouter = require('./router/user');
//引入用户购物车路由
const userCart = require('./router/userCart');

//引入产品路由
const product = require('./router/product');

//引入文章路由
const article = require('./router/article');

//引入首页路由
const home = require('./router/home')

const {
  application
} = require('express');

//引入头条详情路由
const details = require('./router/details');

//设置端口
server.listen(3000);

//静态托管
server.use(express.static('public'))
server.use(express.urlencoded({
  extends: false
}));

//挂载用户路由
server.use('/', useRouter);

//挂在用户购物车路由
server.use('/', userCart);

//挂载产品路由
server.use('/', product);

//挂载文章路由
server.use('/', article);

//挂载首页路由
server.use('/', home);

//挂载头条详情页
server.use('/', details);

server.use((err, req, res, next) => {
  //接收所得到的的错误信息
  console.log(err);
  res.status(500).send({
    code: 500,
    msg: '服务器端错误'
  });
});

// 验证码  
// const express = require('express');
// const server = express();
// svg-captcha  
// 安装命令：npm install --save svg-captcha
const svgCap = require('svg-captcha');

// 将public文件夹作为静态托管目录
// 在public目录下新建login.html  可以直接访问它
server.use(express.static('src'));

// 应用session中间件
const session = require('express-session');
server.use(session({
  secret: 'mykey'
}))

// 编写一个接口处理/getcode请求，返回svg图片
server.get('/register', (req, res) => {
  // 生成验证码
  let cap = svgCap.create();
  console.log('生成的验证码是：' + cap.text);
  // 将正确答案存入session
  req.session.answer = cap.text;

  res.type('svg');
  res.send(cap.data); // 返回图片
})

// 登录 验证验证码接口
server.get('/rigster', (req, res) => {
  // 获取请求参数
  console.log(req)
  let ucode = req.data.value;
  console.log('用户输入的验证码为：' + ucode);
  let answer = req.session.answer;
  console.log('正确答案是：' + answer);
  if (ucode == answer) {
    res.send('验证成功');
  } else {
    res.send('验证失败');
  }
})

// server.listen(3000, function(){
//   console.log('server is running...');
// })